import type { My } from "../service/my"

/**小程序端获取token */
type GetAccessTokenMP = {
    token: string
}
/**H5端获取token */
type GetAccessTokenH5 = {
    token: string
}

/**获取token */
export type GetAccessToken<Mode> = Mode extends 'h5' ? GetAccessTokenH5 : GetAccessTokenMP

/**获取用户信息 */
export type GetMyInfo = {
    info: My
}

/**小程序端用户登录参数 */
type MyLoginParamMP = {
    /**登录code */
    code: string,
    iv?: string,
    rawData?: string,
    encryptedData?: string,
    signature?: string
}

/**H5端用户登录参数 */
type MyLoginParamH5 = {
    /**账号 */
    username: string,
    /**密码 */
    password: string,
}

/**用户登录参数 */
export type MyLoginParam<Mode> = Mode extends 'h5' ? MyLoginParamH5 : MyLoginParamMP
